Bar code scanners are widely used in retail transactions. In a typical scenario, a product bearing a bar code is introduced into a scan volume of a scanner, which sweeps a laser beam through a scan volume in a pattern determined by the design of the scanner. When the laser beam sweeps across the bar code, light is reflected from the bar code into the scanner to generate a scan signal, which is processed in order to decode the bar code. In a common scenario, an operator passes a product bearing a bar code across a scan window, moving the product and the bar code through the scan volume, with the bar code being intersected by scan lines for detection and decoding of the bar code. In a typical operation, a number of products, some of which may be identical, and therefore may bear identical bar codes, are passed through the scan volume in a transaction.
In order to provide for accurate and efficient processing of transactions, it is useful to provide for automatic means of distinguishing valid from invalid detections and decodings. For example, it is useful to provide means for preventing an erroneous double read of the same bar code on the same object.
Many scanners are capable of estimating position information for a bar code label. When a full or partial decoding is performed on a label, information useful for determining the position of the bar code in the scan zone is noted and may be used to compute an estimate of the label's location. If a label is consecutively intersected by scan lines, successive position estimates may be computed in order to enhance scanning accuracy. Position information for a bar code label, particularly successive position estimates indicating a trajectory of the label through the scan volume, are useful for preventing double scans of the same label by providing information that can be used to establish whether or not successive detections of identical label information result from successive scans of the same label or scans of different but identical labels. Such information may include whether or not successive detections occur along a trajectory that may be reasonably expected to be followed by a label being moved through a scan zone. Examples of systems using position estimation for bar code labels are disclosed in Blanford U.S. Pat. Nos. 6,347,741 and 6,220,513, assigned to the assignee of the present invention and incorporated herein by reference in their entirety. Another example of a system using position estimation to enhance scanning accuracy for bar code labels, with the system using position information to avoid erroneous double scans, is Heske U.S. patent application Ser. No. 11/455,472, filed on Jun. 19, 2006, assigned to the assignee of the present invention and incorporated herein by reference in its entirety.
In some cases, particularly in cases in which small bar code labels are scanned, successive position estimates are difficult to obtain. For example, a label may be fully or partially decoded upon intersection by a scan line, but then will not be intersected by additional scan lines for some time, because the label is so small that it will pass through gaps in the scan pattern. At some future time, the label will again be intersected by a scan line and detection will occur, but there will be a period in which no detection has occurred and no tracking information has been received. The trajectory of the bar code is then uncertain. Also, many scanners are adapted for omnidirectional scanning, in which a label may be introduced into the scan zone from any direction. Thus, in many cases, even if position estimates are obtained for bar code labels being detected, cases may occur in which successive detections of the same label are misinterpreted as scans of identical but different labels.